package cn.dengta.webapp.user.dto;

import java.io.Serializable;
import java.math.BigDecimal;

import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

@Getter
@Setter
@Accessors(chain = true)
public class RechargeEventDTO implements Serializable {
	/** true=充值成功; false=下单，未付款 */
	private boolean success;
	/** 充值订单主键id */
	private Long regLogId;
	/** 本地订单号，不一样的平台可能 order_no = trade_no */
	protected String orderNo;
	/** 第三方订单号（来自在线支付平台） */
	protected String tradeNo;
	/** 用户ID */
	protected Long userId;
	/** 类型：1=充值钻石；2=VIP充值；3=购买提升搭讪推荐曝光率服务；4=积分兑换 @see PayType */
	protected Integer type;
	/** 充值钻石数（不包含免费赠送的钻石数） */
	protected Integer coin;
	/** 支付平台：1=Google；2=Apple；3=PayPal；4=Payoneer; 7=PayerMax */
	protected Integer platform;
	/** 来源 */
	private Integer source;
	/** 第三方支付平台的内购商品代号（ID） */
	protected String productCode;

	/** 商品标价 */
	protected BigDecimal price;
	/** 实际支付总额 （美元） */
	protected BigDecimal realPay;

	public RechargeEventDTO init(boolean success, Long regLogId, String orderNo, Long userId, Integer source, String productCode){
		RechargeEventDTO dto = new RechargeEventDTO();
		dto.setSuccess(success);
		dto.setRegLogId(regLogId);
		dto.setOrderNo(orderNo);
		dto.setUserId(userId);
		dto.setSource(source);
		dto.setProductCode(productCode);
		return dto;
	}

}
